#include <SoftwareSerial.h>

// 定义软串口：D2=接收（RX），D3=发送（TX），与模块接线对应
SoftwareSerial moduleSerial(2, 3);  // 软串口对象，专门与模块通信

void setup() {
  // 初始化硬件串口（仅与电脑通信，调试用）
  Serial.begin(115200);
  // 初始化软串口（仅与模块通信，波特率先试9600，不行再换）
  moduleSerial.begin(115200);

  Serial.println("软串口隔离通信已启动，等待指令...");
}

void loop() {
  // 1. 电脑→Arduino→模块：转发串口监视器指令到模块
  if (Serial.available()) {  // 检测电脑发送的指令
    char cmd = Serial.read();  // 读取1个字符
    moduleSerial.write(cmd);   // 通过软串口发送给模块
  }

  // 2. 模块→Arduino→电脑：转发模块响应到串口监视器
  if (moduleSerial.available()) {  // 检测模块发送的响应
    char response = moduleSerial.read();  // 读取1个字符
    Serial.write(response);               // 通过硬件串口发送给电脑
  }
}